COVID-19 Vaccinations in the United States: A Study

Project Description

Introduction

It’s no secret that COVID-19 has dramatically changed our lives over the course of the past year. It’s only recently, as vaccines have started to become available, that society has begun to return to normal.

When we sat down to discuss what to study, we were all drawn to the dramatic impact of vaccinations. And although different aspects of the issue, ranging from differential state effects, to political correlations, to adaptations over time, caught our attention, it was clear that we wanted to study vaccination data. We thought we’d turn to the United States, as our previous project had a more international focus.

Once we’d settled on a topic, we began to look for data sources. In the end, we ended up with six datasets. The first two focused on state level vaccination data, in California and Tennessee respectively. In a similar vein, there was a dataset that contained information about Tennessee on a county-wide level. The next two were more general, containing basic information about doses administered over time: one was from the CDC, one was from our world in data. Finally, we used a dataset from the MIT Elections Lab to learn about past political results.

From there, we moved to analysis. That work was broken into three main sections. They are all easily accessible via tabs on the left-hand side of your screen. Enjoy!

Results

In the end, we discovered several interesting patterns with regard to vaccination in the United States.

Comparison: CA and TN

An issue central to policy response to the COVID-19 pandemic is how to efficiently, equitably, and safely administered vaccinations among subpopulations of a given country’s citizens. Especially given the race-related events, movements, and justice and injustices in the past year, equitable vaccine distribution among racial groups is a very important, highly studied topic. Below, we will analyze vaccine administration by race in California and Tennessee, two historically partisan states, to see how well racially just policies and public health hopes are faring as they are put into practice. To calculate the proportion of racial groups, I scaled vaccine counts by racial subpopulations in California and Tennessee.

Unfortunately, the datasets available on California and Tennessee vaccinations had different racial categories and fineness thereof. Regardless, there are important conclusions to draw from the data. It is clear that in both California and Tennessee, Black Americans received COVID-19 vaccinations at the lowest rate. This trend began from the beginning of vaccine administration in both cases, demonstrating a clear racial inequity for this group.

Similarly, most other groups of people of color in California were vaccinated at rates below Caucasian Californians (except for Asian Californians and Native Hawaiian/Pacific Islander Californians). This suggests that Black and Brown communities encounter barriers to receiving vaccinations. Asian Californians appear to receive vaccines at similar rates to Caucasian Californians, which suggests a possibly less stark set of systemic barriers keeping Asian Californians from accessing the COVID-19 vaccine. Lastly, Native Hawaiian or Pacific Islander Californians appear to have consistently received the COVID-19 vaccine from the start. One theory for this occurrence is that Native Hawaiians whose tribal status is federally or regionally recognized may be able to receive the COVID-19 vaccine more easily via Indian Health Service vaccination clinics. However, this theory does not align with the low rates that non-Hawaiian Natives appear to be receiving vaccines.

In Tennessee, we also see a similar vaccination rate between Asian Tennesseeans and Caucasian Tennesseeans. This also suggests that Asian Tennesseeans encounter less stark systemic race-related barriers to COVID-19 vaccination. However, Black Tennesseeans appear to receive COVID-19 vaccinations at lower rates than their non-Black counterparts, which suggests that vaccine distribution between Black and non-Black communities in Tennessee is not equitable.

Lastly, it is important to note that in general, the overall vaccination rates in Tennessee are higher than in California. I theorize that this is because the Tennessee dataset did not specify whether vaccine counts meant fully vaccinated persons or vaccine doses administered, whereas the California dataset supplied counts of fully vaccinated persons. Since the overall purpose of this visualization was to compare rates between racial groups, and I believe that it is a fair assumption to say that racial groups and vaccine type (i.e. one-dose series or two-dose series) are not confounded, I hope that you all will find this visualization adequate.

The above graph shows the change in total vaccine doses in California between February 15 and April 15, 2021. I chose to analyze total doses instead of proportion of populations to demonstrate the incredibly high need for vaccine doses in highly populated areas, such as Los Angeles County (colored dark purple in the April 15 map). It appears that total doses administered falls highest in more populous counties, specifically those that encircle the Bay Area, Los Angeles, San Diego, Sacramento, and the Central Valley. If you look closely, you can see that some less populous counties saw a change in vaccine dosage between February 15 and April 15, but that that change is much smaller than the changes in populous areas. This can be explained by three main factors, the first (and most obvious) that vaccine counts should be lower where there are less people, the second that rural areas tend to be more conservative and conservative populations tend to have more anti-vaccine individuals in them, and the third (and most important) that public health infrastructure in rural areas tends to be less thorough, presenting many access issues for agricultural communities, Native communities, elderly people, and other populations that live in rural areas.

Lastly, the above graph shows the change in total vaccine doses in Tennessee between February 15 and April 15, 2021. It appears that total doses administered falls highest in more populous counties, specifically those that encircle Nashville, Memphis, Knoxville, and Chattanooga. Similar as to in California, it appears that less populous counties saw a small change in vaccine dosage between February 15 and April 15. This suggests that rural counties in Tennessee face challenges in administering vaccine doses to their populations that are similar to those in rural Californian counties.

Politics and Vaccinations

Data and Methods

Much has been made of the possible correlation between political inclination and vaccine hesitancy, a phenomenon where people refuse to get their COVID-19 vaccination shot, even though the innoculation has been proven sound from a medical perspective. Articles such as this one from Fortune Magazine and this one from the New York Times allege that Trump voters and, to some extent, Republicans, are more likely to refuse vaccination.

To visualize this idea, I drew from two data sources. First, I relied on the CDC’s vaccination records. I was comfortable with the reliability of that source. I also drew from the MIT Election Lab, which provided me a comprehensive list of state’s voting records, including during the 2020 presidential election, which I was most interested in.

From there, it was a matter of data-wrangling: I merged the two datasets, selected the variables I was going to use, and created the required new variables. The first of these was a ratio of vaccines delivered vs. administered, per state. The second was an indicator variable, which allowed me to see how a state voted in 2020 (Trump vs. Biden).

After that, it was a matter of visualization. I proceeded in four steps.

  1. Look at the big picture. For this, I made a map of state-level vaccination administration ratios, then compared it to a map that showed the percentage of people vaccinated.

  2. The above convinced me of the importance of understanding what leads to low administration ratios, as much of the time, that appeared to be a barrier to achieving high levels of per-capita vaccination. To confirm this inkling, I turned to a scatterplot. Once satisfied there, I decided to see if my factor of interest, politics, could play a role.

  3. I created a map of the United States, colored by politics, then shaded by ratio. I thought I saw a clear trend towards Republican states being worse at administering the vaccines they were given, but I wasn’t to investigate further.

  4. Looking at a boxplot, I confirmed my visual assumption: Republican states had a much lower median ratio.

These steps, and conclusions, are described in more detail below.

Initial Maps, Scatterplot

Below are the first two visualizations I created, meant to justify my investigation of politcal impacts on vaccination ratios.

<<<<<<< HEAD

Political Map, Boxplot

=======

Politics and Vaccinations

R Markdown

#read in
ratios.1 <- read_csv("finalratios.csv")
## Warning: Missing column names filled in: 'X1' [1]
## 
## ── Column specification ────────────────────────────────────────────────────────
## cols(
##   X1 = col_double(),
##   state = col_character(),
##   dem_votes = col_double(),
##   rep_votes = col_double(),
##   delivered = col_double(),
##   delivered_100 = col_double(),
##   admin = col_double(),
##   admin_100 = col_double(),
##   percent_one_18 = col_double(),
##   percent_full_18 = col_double()
## )
#quick updates to dataset
ratios.2 <- ratios.1 %>%
  select(-c(X1)) %>%
  mutate(politics = case_when(dem_votes > rep_votes ~ "1", dem_votes < rep_votes ~ "0")) %>%
  mutate(ratio_overall = admin/delivered) %>%
  mutate(ratio_100 = admin_100/delivered_100)

#data for maps
usa_states <- map_data(map = "state", region = ".") 
ratio_map <- ratios.2 %>%
  right_join(usa_states, by = c("state" = "region"))

map_dem <- ratio_map %>%
  filter(politics != 0)
map_rep <- ratio_map %>%
  filter(politics != 1)

Including Plots

You can also embed plots, for example:

## `geom_smooth()` using formula 'y ~ x'

Note that the echo = FALSE parameter was added to the code chunk to prevent printing of the R code that generated the plot.

>>>>>>> 6c1d938bc9b8e06fa710bfcc61edf31ef3eff055

Tracking Statewide Vaccinations

A large question surrounding the vaccines administered, is how that number has changed overtime in the United States. Before the eligibility guidelines were lifted, it was at each state’s discretion which groups were eligible to get vaccinated. Because not all states had the same restrictions, depending on where someone lived, they could get vaccinated earlier than someone else who lived in a different state. Naturally, this led to a question of whether some states were giving more vaccinations per day, which could mean that they were in a position to expand their eligibility of who was able to get vaccinated. So, I decided to make a timelapse of a statewide map of the United States measuring the change overtime of each states number of vaccinations given per day.

<<<<<<< HEAD

The Shift in Number of Vaccines Delivered Across the United States

=======

The Shift in Number of Vaccines Delivered Across the United States As we can see here,

>>>>>>> 6c1d938bc9b8e06fa710bfcc61edf31ef3eff055

Here is a link to a shiny app where one can look at vaccine trends in the United States as a line graph:

usa_states <- map_data(map = "state", region = ".") 

# using inner_join to remove alaska & hawaii
usa_vaccine_states <- kv_states %>%
  inner_join(usa_states, by = c("state" = "region"))
  
anim_map_us <- usa_vaccine_states %>%
ggplot() +
 geom_polygon(aes(x = long, y = lat, group = group, fill = cumulative_vaccinations)
            ,color = "white") +
 theme_void() +
 coord_fixed(ratio = 1.3) +
 labs(fill = "Number of People Vaccinated"
      , title = "USA Daily Vaccinations by State"
      , subtitle = "{closest_state}"
  theme(legend.position="right") +
  scale_fill_distiller(palette = "YlGnBu", direction = "horizantle") +
  transition_states(state = Day, transition_length=2
                  , state_length = 5)
anim_map_us
animate(anim_map_us, nframes = 2*length(unique(usa_vaccine_states$Day))
        , renderer = gifski_renderer("kriti/usa_vaccine_number.gif"))